The invention relates to processing data on a networked computer system lacking format-specific data processing resources.
Wide area networks (WANs), such as the Internet, facilitate the exchange of electronic data between heterogeneous computer systems. Through client/server mechanisms such as HyperText Transfer Protocol (HTTP) or File Transfer Protocol (FTP), data created or stored on one computer system can be made readily available for transfer to and use on another computer system.
In particular, computer systems on a WAN can be configured to operate as "clients" and "servers." With HTTP, for example, clients generate request messages which are sent over the WAN to servers. The request messages include a Uniform Resource Locator (URL), an alphanumeric string uniquely identifying the location of a data resource (e.g., a data file or a process for generating a stream of data) on the WAN. When a request message is received by a server, the server fetches data from the requested resource and transmits the data to the client.
One impediment to such an exchange, however, is data format incompatibility. Modern software programs, such as word processors, desktop publishing systems and multimedia systems, represent and store data in a wide variety of formats. The format of data determines how it should be interpreted in order to make it intelligible to a human user. A user wishing to perform a function (e.g., display, print, or edit) on data in a given format must therefore have access to facilities (e.g., software, printers, or other hardware) that can process (i.e., properly interpret) data in that format. If the user's computer system does not include facilities having the ability to process data in a given format, the user will not be able to use the data.
Because of the multiplicity of data formats currently used in conjunction with commercial computer systems, standard conventions have been developed which permit efficient data format identification. One such convention involves the use of filename extensions to indicate the format of data within the file. For example, a file with the name of "picture.gif" has the filename extension "gif" indicating that the file contains data in GIF format. Another widely used convention is Multipurpose Internet Mail Extensions (MIME). Under the MIME framework, data formats are registered with a central authority which issues a set of standard codes for identifying the formats. MIME codes are often used in network communications to identify the format of data being transmitted between computer systems.
Within a single computer system or organization, the problem of data format incompatibility is likely to be relatively insignificant since it is likely that all data created on the system for a given purpose will be created using the same software program and will thus have the same format. However, on a WAN connecting heterogeneous computer systems, the inability of computers systems to process data formatted elsewhere will likely be more significant.
One conventional approach to the problem of data format incompatibility is to maintain, on a given computer system, facilities capable of recognizing all of the data formats likely to be encountered by users of that system. This approach is generally not practical, however, in light of the expense involved, the need for users to learn how to operate multiple facilities, and the need to frequently add new facilities in light of the introduction of new data formats.
Another approach is to maintain on the given computer system a set of parser (data conversion) programs which are capable of converting data from one format to another. A user seeking to use data of a type which could not be processed by system's resident facilities would use a parser to translate the data into a format which could be. There are at least two disadvantages to this solution: First, the use of the parser will consume additional computer system resources since it must be executed every time data of a format which cannot be directly processed by the system is retrieved from the WAN. Moreover, the constantly changing variety and number of data formats makes the task of maintaining the ability to translate all necessary data formats a difficult one.